以下の場所で4D Chartを使用できます:
- フォーム上の4D Chartエリア
- 4D Chartプラグインウィンドウ
- 4D Chartオフスクリーンエリア
この節では、データベースでこれらを作成する方法について説明します。
フォームに4D Chartエリアを配置できます。通常4D Chartエリアは入力フォーム上に配置され、ドキュメントを操作できるようにします。情報の表示や印刷に使用するために、4D Chartエリアを出力フォームに置くこともできます。4D Chartエリアがフォーム全体を占めることも、フィールドや他のフォームオブジェクトと空間を共有することもできます。
サイズは自由に設定できます。しかしエリアのサイズが300 x 150ピクセルより小さいと、エリア変数の名前がタイトルに付けられたボタンとして表示されます。ユーザがこのボタンをクリックするとエリアがフルスクリーンモードで表示されます。このメカニズムはCT SET ENTERABLE コマンドで無効にできます。
プラグインオブジェクトエリアを使用してフォーム上に4D Chart エリアを作成します。4Dにおいてプラグインエリアオブジェクトは、ボタンや入力可能エリア、スクロールエリアと同様、アクティブオブジェクトタイプのひとつです。プラグインエリアに関する情報は4D Design Referenceと4D Language Referenceマニュアルを参照してください。
フォーム上のドキュメントを参照する必要がある場合、プラグインエリアオブジェクトを作成するときに使用したオブジェクト変数を使用します。
フォーム上に4D Chartエリアを配置することに関する更なる情報は4D Chartドキュメントの参照を参照してください。
Open external window コマンドを使用してプラグインウィンドウを開き、空の4D Chartドキュメントを表示できます。このコマンドに関する情報は、4D Language Referenceマニュアルを参照してください。
Open external window は新しいウィンドウを開き、plugInArea 引数でサポートされる4Dプラグインエリアを表示します。またコマンドはエリアのID番号を返します。
4D Chartの場合、plugInArea 引数には "_4D Chart" を指定します。最初の下線と、“4D”と“Chart”の間のスペースを省略しないでください。この両方がシンタックス要素として必要です。
Open external window はモードレスウィンドウを作成します。これは同時に複数のアクティブウィンドウを開くことを可能にします。コマンドはユーザ入力を待ちませんので、一度に複数のアクティブウィンドウを開くことができます。ウィンドウ間をクリックで切り替え、最前面のエリアを編集できます。ウィンドウタイプがタイトルバーを持つ場合、コントロールメニューボックス (Windows) またはクローズボックス (Macintosh) が追加され、ユーザはウィンドウを閉じることができます。
プログラムでプラグインウィンドウを閉じるには、Open external windowから返される値を4DのCLOSE WINDOWコマンドに渡します。
以下はOpen external windowを使用する例題です。コードはプラグインウィンドウを開いて、空の4D Chartドキュメントを表示します。
続いて、ドキュメントエリアを参照する必要があるときはvChartを使用します:
オフスクリーンエリアはメモリに格納され、プログラマやユーザからは見えません。オフスクリーンを使用して、ユーザに表示する前や保存する前に、必要に応じてオリジナルに戻すなど、ドキュメントを更新できます。
再描画の必要がないため、4D Chartはオフスクリーンエリアでより高速に動作します。
CT New offscreen area コマンドを使用してオフスクリーンエリアを作成できます。CT PICTURE TO AREA コマンドを使用して、(4D Chartエリアを格納した) ピクチャフィールドを、(オフスクリーンの) 4D Chartエリアに配置できます。これらのコマンドについての説明は、エリアテーマのそれぞれのコマンドを参照してください。
オフスクリーンエリアの使用が終わったら、それが使用したメモリを解放するために、オフスクリーンエリアの削除を忘れないでください。データベースを閉じるときにクリアされていないオフスクリーンエリアがあると、4Dはエラーメッセージを表示します。
以下の例題をプロジェクトメソッドに記述します。このコードはドキュメントを保存するためにオフスクリーンエリアを作成します。フォーム上のボタンを使用して、ユーザは保存済みのドキュメントに戻ることができます。
入力フォーム上にボタンを作成して、以下のコードを割り当てます: